home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1999 April: Mac OS SDK / Dev.CD Apr 99 SDK1.toast / Development Kits / Interfaces&Libraries / Universal / Interfaces / AIncludes / Connections.a < prev    next >
Encoding:
Text File  |  1998-08-17  |  13.4 KB  |  542 lines  |  [TEXT/MPS ]

  1. ;
  2. ;    File:        Connections.a
  3. ;
  4. ;    Contains:    Communications Toolbox Connection Manager Interfaces.
  5. ;
  6. ;    Version:    Technology:    System 7.5
  7. ;                Release:    Universal Interfaces 3.2
  8. ;
  9. ;    Copyright:    © 1988-1998 by Apple Computer, Inc., all rights reserved
  10. ;
  11. ;    Bugs?:        For bug reports, consult the following page on
  12. ;                the World Wide Web:
  13. ;
  14. ;                    http://developer.apple.com/bugreporter/
  15. ;
  16. ;
  17.     IF &TYPE('__CONNECTIONS__') = 'UNDEFINED' THEN
  18. __CONNECTIONS__ SET 1
  19.  
  20.     IF &TYPE('__CONDITIONALMACROS__') = 'UNDEFINED' THEN
  21.     include 'ConditionalMacros.a'
  22.     ENDIF
  23.     IF &TYPE('__MACTYPES__') = 'UNDEFINED' THEN
  24.     include 'MacTypes.a'
  25.     ENDIF
  26.     IF &TYPE('__MIXEDMODE__') = 'UNDEFINED' THEN
  27.     include 'MixedMode.a'
  28.     ENDIF
  29.     IF &TYPE('__DIALOGS__') = 'UNDEFINED' THEN
  30.     include 'Dialogs.a'
  31.     ENDIF
  32.  
  33.  
  34. curCMVersion                    EQU        2                    ; current Connection Manager version
  35.  
  36. curConnEnvRecVers                EQU        0                    ;    current Connection Manager Environment Record version
  37.  
  38.                                                             ; CMErr 
  39. cmGenericError                    EQU        -1
  40. cmNoErr                            EQU        0
  41. cmRejected                        EQU        1
  42. cmFailed                        EQU        2
  43. cmTimeOut                        EQU        3
  44. cmNotOpen                        EQU        4
  45. cmNotClosed                        EQU        5
  46. cmNoRequestPending                EQU        6
  47. cmNotSupported                    EQU        7
  48. cmNoTools                        EQU        8
  49. cmUserCancel                    EQU        9
  50. cmUnknownError                    EQU        11
  51. ; typedef OSErr                         CMErr
  52.  
  53.  
  54.  
  55. cmData                            EQU        $00000001
  56. cmCntl                            EQU        $00000002
  57. cmAttn                            EQU        $00000004
  58. cmDataNoTimeout                    EQU        $00000010
  59. cmCntlNoTimeout                    EQU        $00000020
  60. cmAttnNoTimeout                    EQU        $00000040
  61. cmDataClean                        EQU        $00000100
  62. cmCntlClean                        EQU        $00000200
  63. cmAttnClean                        EQU        $00000400            ;        Only for CMRecFlags (not CMChannel) in the rest of this enum    
  64. cmNoMenus                        EQU        $00010000
  65. cmQuiet                            EQU        $00020000
  66. cmConfigChanged                    EQU        $00040000
  67. ;  CMRecFlags and CMChannel        
  68. ;         Low word of CMRecFlags is same as CMChannel    
  69. ; typedef long                             CMRecFlags
  70.  
  71. ; typedef short                         CMChannel
  72.  
  73.  
  74.  
  75.  
  76. cmStatusOpening                    EQU        $00000001
  77. cmStatusOpen                    EQU        $00000002
  78. cmStatusClosing                    EQU        $00000004
  79. cmStatusDataAvail                EQU        $00000008
  80. cmStatusCntlAvail                EQU        $00000010
  81. cmStatusAttnAvail                EQU        $00000020
  82. cmStatusDRPend                    EQU        $00000040            ; data read pending    
  83. cmStatusDWPend                    EQU        $00000080            ; data write pending    
  84. cmStatusCRPend                    EQU        $00000100            ; cntl read pending    
  85. cmStatusCWPend                    EQU        $00000200            ; cntl write pending    
  86. cmStatusARPend                    EQU        $00000400            ; attn read pending    
  87. cmStatusAWPend                    EQU        $00000800            ; attn write pending    
  88. cmStatusBreakPend                EQU        $00001000
  89. cmStatusListenPend                EQU        $00002000
  90. cmStatusIncomingCallPresent        EQU        $00004000
  91. cmStatusReserved0                EQU        $00008000
  92. ; typedef unsigned long                 CMStatFlags
  93.  
  94.  
  95. cmDataIn                        EQU        0
  96. cmDataOut                        EQU        1
  97. cmCntlIn                        EQU        2
  98. cmCntlOut                        EQU        3
  99. cmAttnIn                        EQU        4
  100. cmAttnOut                        EQU        5
  101. cmRsrvIn                        EQU        6
  102. cmRsrvOut                        EQU        7
  103. ; typedef unsigned short                 CMBufFields
  104.  
  105. CMBuffers                RECORD 0
  106. elements                 ds.l    8
  107. sizeof                     EQU *                    ; size:   $20 (32)
  108.                         ENDR
  109.  
  110.  
  111. CMBufferSizes            RECORD 0
  112. elements                 ds.l    8
  113. sizeof                     EQU *                    ; size:   $20 (32)
  114.                         ENDR
  115.  
  116.  
  117.  
  118. cmSearchSevenBit                EQU        $00000001
  119. ; typedef unsigned short                 CMSearchFlags
  120.  
  121.  
  122. cmFlagsEOM                        EQU        $00000001
  123. ; typedef unsigned short                 CMFlags
  124.  
  125. ConnEnvironRec            RECORD 0
  126. version                     ds.w    1                ; offset: $0 (0)
  127. baudRate                 ds.l    1                ; offset: $2 (2)
  128. dataBits                 ds.w    1                ; offset: $6 (6)
  129. channels                 ds.w    1                ; offset: $8 (8)
  130. swFlowControl             ds.b    1                ; offset: $A (10)
  131. hwFlowControl             ds.b    1                ; offset: $B (11)
  132. flags                     ds.w    1                ; offset: $C (12)
  133. sizeof                     EQU *                    ; size:   $E (14)
  134.                         ENDR
  135. ; typedef struct ConnEnvironRec *        ConnEnvironRecPtr
  136.  
  137.  
  138.  
  139. ; typedef ConnRecord *                    ConnPtr
  140.  
  141. ; typedef ConnPtr *                        ConnHandle
  142.  
  143. ConnRecord                RECORD 0
  144. procID                     ds.w    1                ; offset: $0 (0)
  145. flags                     ds.l    1                ; offset: $2 (2)
  146. errCode                     ds.w    1                ; offset: $6 (6)
  147. refCon                     ds.l    1                ; offset: $8 (8)
  148. userData                 ds.l    1                ; offset: $C (12)
  149. defProc                     ds.l    1                ; offset: $10 (16)
  150. config                     ds.l    1                ; offset: $14 (20)
  151. oldConfig                 ds.l    1                ; offset: $18 (24)
  152. asyncEOM                 ds.l    1                ; offset: $1C (28)
  153. reserved1                 ds.l    1                ; offset: $20 (32)
  154. reserved2                 ds.l    1                ; offset: $24 (36)
  155. cmPrivate                 ds.l    1                ; offset: $28 (40)
  156. bufferArray                 ds        CMBuffers        ; offset: $2C (44)
  157. bufSizes                 ds        CMBufferSizes    ; offset: $4C (76)
  158. mluField                 ds.l    1                ; offset: $6C (108)
  159. asyncCount                 ds        CMBufferSizes    ; offset: $70 (112)
  160. sizeof                     EQU *                    ; size:   $90 (144)
  161.                         ENDR
  162.  
  163.                                                             ; CMIOPB constants and structure 
  164. cmIOPBQType                        EQU        10
  165. cmIOPBversion                    EQU        0
  166. CMIOPB                    RECORD 0
  167. qLink                     ds.l    1                ; offset: $0 (0)
  168. qType                     ds.w    1                ; offset: $4 (4)        ;  cmIOPBQType 
  169. hConn                     ds.l    1                ; offset: $6 (6)
  170. theBuffer                 ds.l    1                ; offset: $A (10)
  171. count                     ds.l    1                ; offset: $E (14)
  172. flags                     ds.w    1                ; offset: $12 (18)
  173. userCompletion             ds.l    1                ; offset: $14 (20)
  174. timeout                     ds.l    1                ; offset: $18 (24)
  175. errCode                     ds.w    1                ; offset: $1C (28)
  176. channel                     ds.w    1                ; offset: $1E (30)
  177. asyncEOM                 ds.l    1                ; offset: $20 (32)
  178. reserved1                 ds.l    1                ; offset: $24 (36)
  179. reserved2                 ds.w    1                ; offset: $28 (40)
  180. version                     ds.w    1                ; offset: $2A (42)        ;  cmIOPBversion 
  181. refCon                     ds.l    1                ; offset: $2C (44)        ;  for application 
  182. toolData1                 ds.l    1                ; offset: $30 (48)        ;  for tool 
  183. toolData2                 ds.l    1                ; offset: $34 (52)        ;  for tool 
  184. sizeof                     EQU *                    ; size:   $38 (56)
  185.                         ENDR
  186. ; typedef struct CMIOPB *                CMIOPBPtr
  187.  
  188.  
  189.  
  190. ;
  191. ; pascal CMErr InitCM(void )
  192. ;
  193.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  194.         IMPORT_CFM_FUNCTION InitCM
  195.     ENDIF
  196.  
  197. ;
  198. ; pascal Handle CMGetVersion(ConnHandle hConn)
  199. ;
  200.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  201.         IMPORT_CFM_FUNCTION CMGetVersion
  202.     ENDIF
  203.  
  204. ;
  205. ; pascal short CMGetCMVersion(void )
  206. ;
  207.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  208.         IMPORT_CFM_FUNCTION CMGetCMVersion
  209.     ENDIF
  210.  
  211. ;
  212. ; pascal ConnHandle CMNew(short procID, CMRecFlags flags, CMBufferSizes desiredSizes, long refCon, long userData)
  213. ;
  214.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  215.         IMPORT_CFM_FUNCTION CMNew
  216.     ENDIF
  217.  
  218. ;
  219. ; pascal void CMDispose(ConnHandle hConn)
  220. ;
  221.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  222.         IMPORT_CFM_FUNCTION CMDispose
  223.     ENDIF
  224.  
  225. ;
  226. ; pascal CMErr CMListen(ConnHandle hConn, Boolean async, ConnectionCompletionUPP completor, long timeout)
  227. ;
  228.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  229.         IMPORT_CFM_FUNCTION CMListen
  230.     ENDIF
  231.  
  232. ;
  233. ; pascal CMErr CMAccept(ConnHandle hConn, Boolean accept)
  234. ;
  235.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  236.         IMPORT_CFM_FUNCTION CMAccept
  237.     ENDIF
  238.  
  239. ;
  240. ; pascal CMErr CMOpen(ConnHandle hConn, Boolean async, ConnectionCompletionUPP completor, long timeout)
  241. ;
  242.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  243.         IMPORT_CFM_FUNCTION CMOpen
  244.     ENDIF
  245.  
  246. ;
  247. ; pascal CMErr CMClose(ConnHandle hConn, Boolean async, ConnectionCompletionUPP completor, long timeout, Boolean now)
  248. ;
  249.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  250.         IMPORT_CFM_FUNCTION CMClose
  251.     ENDIF
  252.  
  253. ;
  254. ; pascal CMErr CMAbort(ConnHandle hConn)
  255. ;
  256.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  257.         IMPORT_CFM_FUNCTION CMAbort
  258.     ENDIF
  259.  
  260. ;
  261. ; pascal CMErr CMStatus(ConnHandle hConn, CMBufferSizes sizes, CMStatFlags *flags)
  262. ;
  263.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  264.         IMPORT_CFM_FUNCTION CMStatus
  265.     ENDIF
  266.  
  267. ;
  268. ; pascal void CMIdle(ConnHandle hConn)
  269. ;
  270.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  271.         IMPORT_CFM_FUNCTION CMIdle
  272.     ENDIF
  273.  
  274. ;
  275. ; pascal void CMReset(ConnHandle hConn)
  276. ;
  277.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  278.         IMPORT_CFM_FUNCTION CMReset
  279.     ENDIF
  280.  
  281. ;
  282. ; pascal void CMBreak(ConnHandle hConn, long duration, Boolean async, ConnectionCompletionUPP completor)
  283. ;
  284.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  285.         IMPORT_CFM_FUNCTION CMBreak
  286.     ENDIF
  287.  
  288. ;
  289. ; pascal CMErr CMRead(ConnHandle hConn, void *theBuffer, long *toRead, CMChannel theChannel, Boolean async, ConnectionCompletionUPP completor, long timeout, CMFlags *flags)
  290. ;
  291.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  292.         IMPORT_CFM_FUNCTION CMRead
  293.     ENDIF
  294.  
  295. ;
  296. ; pascal CMErr CMWrite(ConnHandle hConn, const void *theBuffer, long *toWrite, CMChannel theChannel, Boolean async, ConnectionCompletionUPP completor, long timeout, CMFlags flags)
  297. ;
  298.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  299.         IMPORT_CFM_FUNCTION CMWrite
  300.     ENDIF
  301.  
  302. ;
  303. ; pascal CMErr CMIOKill(ConnHandle hConn, short which)
  304. ;
  305.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  306.         IMPORT_CFM_FUNCTION CMIOKill
  307.     ENDIF
  308.  
  309. ;
  310. ; pascal void CMActivate(ConnHandle hConn, Boolean activate)
  311. ;
  312.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  313.         IMPORT_CFM_FUNCTION CMActivate
  314.     ENDIF
  315.  
  316. ;
  317. ; pascal void CMResume(ConnHandle hConn, Boolean resume)
  318. ;
  319.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  320.         IMPORT_CFM_FUNCTION CMResume
  321.     ENDIF
  322.  
  323. ;
  324. ; pascal Boolean CMMenu(ConnHandle hConn, short menuID, short item)
  325. ;
  326.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  327.         IMPORT_CFM_FUNCTION CMMenu
  328.     ENDIF
  329.  
  330. ;
  331. ; pascal Boolean CMValidate(ConnHandle hConn)
  332. ;
  333.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  334.         IMPORT_CFM_FUNCTION CMValidate
  335.     ENDIF
  336.  
  337. ;
  338. ; pascal void CMDefault(Ptr *theConfig, short procID, Boolean allocate)
  339. ;
  340.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  341.         IMPORT_CFM_FUNCTION CMDefault
  342.     ENDIF
  343.  
  344. ;
  345. ; pascal Handle CMSetupPreflight(short procID, long *magicCookie)
  346. ;
  347.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  348.         IMPORT_CFM_FUNCTION CMSetupPreflight
  349.     ENDIF
  350.  
  351. ;
  352. ; pascal Boolean CMSetupFilter(short procID, const void *theConfig, short count, DialogPtr theDialog, EventRecord *theEvent, short *theItem, long *magicCookie)
  353. ;
  354.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  355.         IMPORT_CFM_FUNCTION CMSetupFilter
  356.     ENDIF
  357.  
  358. ;
  359. ; pascal void CMSetupSetup(short procID, const void *theConfig, short count, DialogPtr theDialog, long *magicCookie)
  360. ;
  361.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  362.         IMPORT_CFM_FUNCTION CMSetupSetup
  363.     ENDIF
  364.  
  365. ;
  366. ; pascal void CMSetupItem(short procID, const void *theConfig, short count, DialogPtr theDialog, short *theItem, long *magicCookie)
  367. ;
  368.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  369.         IMPORT_CFM_FUNCTION CMSetupItem
  370.     ENDIF
  371.  
  372. ;
  373. ; pascal void CMSetupXCleanup(short procID, const void *theConfig, short count, DialogPtr theDialog, Boolean OKed, long *magicCookie)
  374. ;
  375.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  376.         IMPORT_CFM_FUNCTION CMSetupXCleanup
  377.     ENDIF
  378.  
  379. ;
  380. ; pascal void CMSetupPostflight(short procID)
  381. ;
  382.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  383.         IMPORT_CFM_FUNCTION CMSetupPostflight
  384.     ENDIF
  385.  
  386. ;
  387. ; pascal Ptr CMGetConfig(ConnHandle hConn)
  388. ;
  389.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  390.         IMPORT_CFM_FUNCTION CMGetConfig
  391.     ENDIF
  392.  
  393. ;
  394. ; pascal short CMSetConfig(ConnHandle hConn, const void *thePtr)
  395. ;
  396.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  397.         IMPORT_CFM_FUNCTION CMSetConfig
  398.     ENDIF
  399.  
  400. ;
  401. ; pascal OSErr CMIntlToEnglish(ConnHandle hConn, const void *inputPtr, Ptr *outputPtr, short language)
  402. ;
  403.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  404.         IMPORT_CFM_FUNCTION CMIntlToEnglish
  405.     ENDIF
  406.  
  407. ;
  408. ; pascal OSErr CMEnglishToIntl(ConnHandle hConn, const void *inputPtr, Ptr *outputPtr, short language)
  409. ;
  410.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  411.         IMPORT_CFM_FUNCTION CMEnglishToIntl
  412.     ENDIF
  413.  
  414. ;
  415. ; pascal long CMAddSearch(ConnHandle hConn, ConstStr255Param theString, CMSearchFlags flags, ConnectionSearchCallBackUPP callBack)
  416. ;
  417.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  418.         IMPORT_CFM_FUNCTION CMAddSearch
  419.     ENDIF
  420.  
  421. ;
  422. ; pascal void CMRemoveSearch(ConnHandle hConn, long refnum)
  423. ;
  424.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  425.         IMPORT_CFM_FUNCTION CMRemoveSearch
  426.     ENDIF
  427.  
  428. ;
  429. ; pascal void CMClearSearch(ConnHandle hConn)
  430. ;
  431.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  432.         IMPORT_CFM_FUNCTION CMClearSearch
  433.     ENDIF
  434.  
  435. ;
  436. ; pascal CMErr CMGetConnEnvirons(ConnHandle hConn, ConnEnvironRec *theEnvirons)
  437. ;
  438.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  439.         IMPORT_CFM_FUNCTION CMGetConnEnvirons
  440.     ENDIF
  441.  
  442. ;
  443. ; pascal short CMChoose(ConnHandle *hConn, Point where, ConnectionChooseIdleUPP idle)
  444. ;
  445.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  446.         IMPORT_CFM_FUNCTION CMChoose
  447.     ENDIF
  448.  
  449. ;
  450. ; pascal void CMEvent(ConnHandle hConn, const EventRecord *theEvent)
  451. ;
  452.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  453.         IMPORT_CFM_FUNCTION CMEvent
  454.     ENDIF
  455.  
  456. ;
  457. ; pascal void CMGetToolName(short procID, Str255 name)
  458. ;
  459.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  460.         IMPORT_CFM_FUNCTION CMGetToolName
  461.     ENDIF
  462.  
  463. ;
  464. ; pascal short CMGetProcID(ConstStr255Param name)
  465. ;
  466.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  467.         IMPORT_CFM_FUNCTION CMGetProcID
  468.     ENDIF
  469.  
  470. ;
  471. ; pascal void CMSetRefCon(ConnHandle hConn, long refCon)
  472. ;
  473.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  474.         IMPORT_CFM_FUNCTION CMSetRefCon
  475.     ENDIF
  476.  
  477. ;
  478. ; pascal long CMGetRefCon(ConnHandle hConn)
  479. ;
  480.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  481.         IMPORT_CFM_FUNCTION CMGetRefCon
  482.     ENDIF
  483.  
  484. ;
  485. ; pascal long CMGetUserData(ConnHandle hConn)
  486. ;
  487.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  488.         IMPORT_CFM_FUNCTION CMGetUserData
  489.     ENDIF
  490.  
  491. ;
  492. ; pascal void CMSetUserData(ConnHandle hConn, long userData)
  493. ;
  494.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  495.         IMPORT_CFM_FUNCTION CMSetUserData
  496.     ENDIF
  497.  
  498. ;
  499. ; pascal void CMGetErrorString(ConnHandle hConn, short id, Str255 errMsg)
  500. ;
  501.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  502.         IMPORT_CFM_FUNCTION CMGetErrorString
  503.     ENDIF
  504.  
  505. ;
  506. ; pascal CMErr CMNewIOPB(ConnHandle hConn, CMIOPBPtr *theIOPB)
  507. ;
  508.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  509.         IMPORT_CFM_FUNCTION CMNewIOPB
  510.     ENDIF
  511.  
  512. ;
  513. ; pascal CMErr CMDisposeIOPB(ConnHandle hConn, CMIOPBPtr theIOPB)
  514. ;
  515.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  516.         IMPORT_CFM_FUNCTION CMDisposeIOPB
  517.     ENDIF
  518.  
  519. ;
  520. ; pascal CMErr CMPBRead(ConnHandle hConn, CMIOPBPtr theIOPB, Boolean async)
  521. ;
  522.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  523.         IMPORT_CFM_FUNCTION CMPBRead
  524.     ENDIF
  525.  
  526. ;
  527. ; pascal CMErr CMPBWrite(ConnHandle hConn, CMIOPBPtr theIOPB, Boolean async)
  528. ;
  529.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  530.         IMPORT_CFM_FUNCTION CMPBWrite
  531.     ENDIF
  532.  
  533. ;
  534. ; pascal CMErr CMPBIOKill(ConnHandle hConn, CMIOPBPtr theIOPB)
  535. ;
  536.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  537.         IMPORT_CFM_FUNCTION CMPBIOKill
  538.     ENDIF
  539.  
  540.     ENDIF ; __CONNECTIONS__ 
  541.  
  542.